# Actor class
# An Actor is anything that is "alive".
# This includes Enemies, NPCs, abd the PC.

from crl_mapmngr import MapMngr
from crl_entity import EntityDescriptor, Entity

class ActorDescriptor(EntityDescriptor):
  __slots__ = [
    "icoch", "icofg", "icobg"]
  
  #__slots__ = [
  #  "icoch", "icofg", "icobg",
  #  "str", "end", "vit", "dex",
  #  "int", "wis", "abilities",
  #  "equip", "inventory"]
  
  def __init__(self, name, desc, icoch,
    icofg, icobg):
      EntityDescriptor.__init__(self, name,
        desc)
      
      self.icoch = icoch
      self.icofg = icofg
      self.icobg = icobg
  
  def getIconCharacter(self):
    return self.icoch
  
  def getIconFg(self):
    return self.icofg
  
  def getIconBg(self):
    return self.icobg
  
  def getIcon(self):
    return (self.icoch, self.icofg, self.icobg)

class Actor(Entity):
  __slots__ = []
  
  def __init__(self):
    Entity.__init__(self)
  
  def getIconCharacter(self):
    return self.desc.getIconCharacter()
  
  def getIconFg(self):
    return self.desc.getIconFg()
  
  def getIconBg(self):
    return self.desc.getIconBg()
  
  def getIcon(self):
    return self.desc.getIcon()
  
  def update(self):
    pass
